# 数据分析题目解答(建议先赞后看，养成习惯 如果不赞，先拉出去枪毙两分钟 作者：小匠IT)
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
import os

# 设置中文字体路径（请根据实际路径调整）
font_path = r'fonts/SIMSUN.TTC'
font_prop = FontProperties(fname=font_path)

# 创建输出文件夹
output_folder = r'output/41'
os.makedirs(output_folder, exist_ok=True)

# 给定的数据
data = {
    '统计时间': [
        '2019年1月', '2019年2月', '2019年3月', '2019年4月', '2019年5月', '2019年6月',
        '2019年7月', '2019年8月', '2019年9月', '2019年10月', '2019年11月', '2019年12月',
        '2020年1月', '2020年2月', '2020年3月', '2020年4月', '2020年5月', '2020年6月',
        '2020年7月', '2020年8月', '2020年9月', '2020年10月', '2020年11月', '2020年12月',
        '2021年1月', '2021年2月', '2021年3月', '2021年4月', '2021年5月', '2021年6月',
        '2021年7月', '2021年8月', '2021年9月', '2021年10月', '2021年11月', '2021年12月'
    ],
    '交易指数': [
        3658734, 2011786, 2847309, 2952567, 3013512, 3428400,
        3318257, 3522158, 3746754, 3576104, 4322015, 4306463,
        4998654, 3383520, 3707859, 3765263, 3755681, 4218770,
        4044736, 4120233, 4408634, 4378529, 5518135, 5510073,
        5927060, 3330986, 4556119, 4599958, 4725466, 4627985,
        4987658, 5046216, 5047895, 5513450, 6287004, 6048751
    ]
}

# 创建 DataFrame
df_transactions = pd.DataFrame(data)

# 将统计时间转换为日期格式，方便绘图
df_transactions['统计时间'] = pd.to_datetime(df_transactions['统计时间'], format='%Y年%m月')

# 生成图表：绘制2019～2021年月度交易指数变化图
plt.figure(figsize=(14, 7))
plt.plot(df_transactions['统计时间'], df_transactions['交易指数'], marker='o', linestyle='-', label='交易指数')
plt.title('2019～2021年月度交易指数变化图', fontproperties=font_prop, fontsize=16)
plt.xlabel('时间', fontproperties=font_prop, fontsize=14)
plt.ylabel('交易指数', fontproperties=font_prop, fontsize=14)
plt.xticks(fontproperties=font_prop, rotation=45, ha='right')
plt.legend(prop=font_prop)
plt.grid(True)
plt.tight_layout()

output_image_trend = os.path.join(output_folder, '2019_2021_月度交易指数变化.png')
plt.savefig(output_image_trend, dpi=300, bbox_inches='tight')
plt.close()
print(f"2019～2021年月度交易指数变化图已保存到 {output_image_trend}")

# 简答题分析
trend_analysis_result = f"""
### 观察图表“2019～2021年月度交易指数变化图”并判断其发展趋势

#### 发展趋势：
从2019年1月至2021年12月的交易指数变化图来看，整体交易指数呈现逐年上升的趋势。具体来说：

- **2019年**：年初交易指数较高，但在2月份显著下降，随后逐渐回升并在年末达到较高水平。
- **2020年**：年初延续了2019年末的增长势头，但受疫情影响，2月份交易指数大幅下滑。然而，随着疫情得到控制，经济复苏，交易指数在下半年再次攀升，并在年末达到高点。
- **2021年**：继续保持增长态势，尽管2月份有轻微下降，但全年总体呈上升趋势，特别是在11月份达到了三年来的最高点。

#### 淡旺季变化规律：
通过观察图表，可以发现一些明显的淡旺季变化规律：
- **旺季**：通常出现在每年的第四季度（10月至12月），这可能是由于节日促销、年终总结等因素导致的需求增加。
- **淡季**：通常出现在每年的第一季度初（1月至2月），尤其是2月份，可能受到春节假期影响，市场活动减少，需求降低。

综上所述，“交易指数”表现出明显的季节性波动特征，且呈现出逐年增长的整体趋势。商家可以利用这些规律，在旺季加强营销力度，而在淡季则可以考虑推出特别优惠或开展促销活动以刺激消费。
"""

analysis_file_path = os.path.join(output_folder, '趋势分析.txt')
with open(analysis_file_path, 'w', encoding='utf-8') as file:
    file.write(trend_analysis_result)
print(f"趋势分析结果已保存到 {analysis_file_path}")